TimeGraph: GPU Scheduling for Real-Time Multi-Tasking Environments

نویسندگان

  • Shinpei Kato
  • Karthik Lakshmanan
  • Ragunathan Rajkumar
  • Yutaka Ishikawa
چکیده

The Graphics Processing Unit (GPU) is now commonly used for graphics and data-parallel computing. As more and more applications tend to accelerate on the GPU in multi-tasking environments where multiple tasks access the GPU concurrently, operating systems must provide prioritization and isolation capabilities in GPU resource management, particularly in real-time setups. We present TimeGraph, a real-time GPU scheduler at the device-driver level for protecting important GPU workloads from performance interference. TimeGraph adopts a new event-driven model that synchronizes the GPU with the CPU to monitor GPU commands issued from the user space and control GPU resource usage in a responsive manner. TimeGraph supports two prioritybased scheduling policies in order to address the tradeoff between response times and throughput introduced by the asynchronous and non-preemptive nature of GPU processing. Resource reservation mechanisms are also employed to account and enforce GPU resource usage, which prevent misbehaving tasks from exhausting GPU resources. Prediction of GPU command execution costs is further provided to enhance isolation. Our experiments using OpenGL graphics benchmarks demonstrate that TimeGraph maintains the frame-rates of primary GPU tasks at the desired level even in the face of extreme GPU workloads, whereas these tasks become nearly unresponsive without TimeGraph support. Our findings also include that the performance overhead imposed on TimeGraph can be limited to 4-10%, and its event-driven scheduler improves throughput by about 30 times over the existing tick-driven scheduler.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Modelling Real-time Multi-tasking Systems with Timed Traces Note: Most Svrc Technical Reports Are Available Modelling Real-time Multi-tasking Systems with Timed Traces

We formalise the behaviour of non-preemptive, real-time, multi-tasking systems by expressing the computational components assumed by real-time scheduling theory in a trace-based notation. The model is suitable as a target implementation domain for dataaow reenements, amenable to formal schedulability analysis, and implementable in a concurrent real-time programming language.

متن کامل

Operating Systems Challenges for GPU Resource Management

The graphics processing unit (GPU) is becoming a very powerful platform to accelerate graphics and data-parallel compute-intensive applications. It significantly outperforms traditional multi-core processors in performance and energy efficiency. Its application domains also range widely from embedded systems to high-performance computing systems. However, operating systems support is not adequa...

متن کامل

Scalable Multi-Tasking using Preemption Thresholds

Preemptive multi-tasking is a commonly used architecture for designing and implementing embedded real-time software. However, preemptive multi-tasking comes with its own costs. These costs include overheads due to preemptions and context-switches that result in waste of CPU bandwidth. Also, each task incurs a memory cost largely due to the need to maintain a separate stack for each task. These ...

متن کامل

The Algebra of Multi-tasking

Modelling multi-tasking behaviour is an important phase of real-time system design. It is shown how task scheduling principles can be captured in a CCS-based process algebra via extensions for both asymmetric interleaving, to model intraprocessor scheduling decisions, and for asynchronous communication, to model interprocessor precedence constraints. Examples are given of task preemption, block...

متن کامل

GPU-SAM: Leveraging multi-GPU split-and-merge execution for system-wide real-time support

Multi-GPUs appear as an attractive platform to speed up data-parallel GPGPU computation. The idea of split-and-merge execution has been introduced to accelerate the parallelism of multiple GPUs even further. However, it has not been explored before how to exploit such an idea for real-time multi-GPU systems properly. This paper presents an open-source real-time multi-GPU scheduling framework, c...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2011